package com.rf.richfitwheel.utils;

import com.alibaba.fastjson.JSON;
import com.rf.richfitwheel.admin.sys.model.Org;
import com.rf.richfitwheel.admin.sys.model.OrgVO;
import com.rf.richfitwheel.admin.sys.vo.UserVO;

import com.rf.richfitwheel.outbill.feignclient.SysOrgFeign;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;



@Component
public class OrgVoUtils {
    @Autowired
    private SysOrgFeign sysOrgFeign;

    public OrgVO getParentOrgAndGrandpa(UserVO user) {
        OrgVO orgVO = new OrgVO();
        Org parentOrg = user.getDefaultOrg().getParentOrg();
        //判断当前用户的单位是否是本部单位 如果是本部就获取上级单位作为 单位
        if (parentOrg.getOrgRank().equals("1") && parentOrg.getOrgType().equals("1")) {
            orgVO.setParentOrg(user.getDefaultOrg().getGrandpa());
            OrgVO upOrgVO = JSON.parseObject(JSON.toJSONString(sysOrgFeign.getOrgVOByOrgCode(user.getDefaultOrg().getGrandpa().getOrgCode()).get("orgVO")),OrgVO.class);
            if (upOrgVO.getParentOrg()!=null){
                orgVO.setGrandpa(upOrgVO.getParentOrg());
            }else {
                orgVO.setGrandpa(user.getDefaultOrg().getGrandpa());
            }
        } else{
            orgVO.setParentOrg(parentOrg);
            orgVO.setGrandpa(user.getDefaultOrg().getGrandpa());
        }
        return orgVO;
    }
}
